﻿using Modules.Person;
using System.ComponentModel.DataAnnotations;
using System.Xml.Linq;
using static Modules.Person.PersonConstants;

namespace ManagementApi.Models.Manage.ProjectGroupMember
{
    /// <summary>
    /// 班组成员表单
    /// </summary>
    public class ProjectGroupMemberEditForm
    {
        /// <summary>
        /// id
        /// </summary>
        [Display(Name = "id")]
        public int? id { get; set; }

        /// <summary>
        /// 班组ID
        ///</summary>
        [Display(Name = "班组ID")]
        public int GroupId { get; set; }

        /// <summary>
        /// 班组名称
        /// </summary>
        [Display(Name = "班组名称")]
        public string? GroupName { get; set; }

        /// <summary>
        /// 人员ID
        ///</summary>
        [Display(Name = "人员ID")]
        public int? PersonId { get; set; }

        /// <summary>
        /// 当前工种
        ///</summary>
        [Display(Name = "当前工种")]
        public 工人工种? Type { get; set; }

        /// <summary>
        /// 岗位类型
        /// </summary>
        public 管理岗位类型? PostCategory { get; set; }

      

        /// <summary>
        /// 工人类型 参考工人类型字典表
        ///</summary>
        [Display(Name = "工人类型 参考工人类型字典表 ")]
        public 工人类型 Role { get; set; }

        /// <summary>
        /// 是否班组长 参考是否字典表
        ///</summary>
        [Display(Name = "是否班组长 参考是否字典表 ")]
        public bool? IsLeader { get; set; }

        /// <summary>
        /// 开始工作日期
        ///</summary>
        [Display(Name = "开始工作日期")]
        public DateTime? WorkDate { get; set; }

        /// <summary>
        /// 发卡时间
        ///</summary>
        [Display(Name = "发卡时间")]
        public DateTime? IssueCardDate { get; set; }

        /// <summary>
        /// 办卡采集相片
        ///</summary>
        [Display(Name = "办卡采集相片")]
        public string? IssueCardPic { get; set; }

        /// <summary>
        /// 进场日期
        /// </summary>
        [Display(Name = "进场日期")]
        [Required(ErrorMessage = "{0}不能为空")]
        public DateTime? StartDate { get; set; }

        /// <summary>
        /// 出场日期
        /// </summary>
        [Display(Name = "出场日期")]
        public DateTime? EndDate { get; set; }

        /// <summary>
        /// 人员状态(1:在场 0:离场)
        /// </summary>
        [Display(Name = "人员状态 (1:在场 0:离场)")]
        public int Status { get; set; }

        public int? CorpId { get; set; }

        public string? projectName { get; set; }

        public int? projectId { get; set; }

        public string? CorpName { get; set; }
        public string? TypeName { get; set; }
        public string? PostCategoryName { get; set; }

        public bool? IsManager { get; set; }
    }
}